1. Field of Invention
Embodiments of the invention relate in general to transmission of multiple media streams. More specifically, the embodiments of the invention relate to methods and systems enabling in-band signaling of multiple media streams in a network.
2. Description of the Background Art
Transmission of two or more real-time media streams, for example, video and audio, in a network requires the aggregation of multiple digital voice channels, for example 56 Kbit, 64 Kbit digital voice channels. This aggregation is required to provide sufficient bandwidth—typically a minimum of 128 Kbit for video. Each channel may be routed between a source and a destination through a different network path, leading to varying channel latencies.
During the process of transmission, the multiple streams may also develop a varying relationship with each other, due to differences in the processing speed of network devices. Therefore, the multiple streams have to be synchronized at the time of playback.
There are ‘in-band’ and ‘out of band’ signaling protocols for the synchronization of multiple media streams. One such in-band signaling protocol inputs data packets into all the channels at the source. Thereafter, it analyzes the data at the destination to realign the channels. The variance in channel latencies is fixed once the connection is established. However, in the case of Internet Protocol (IP) streams, every packet for any given stream may be routed through completely different network paths or may incur variable delays from end to end.
The out-of-band protocol requires an additional signal channel alongside the data transmission channel, to carry signal messages for synchronization. However, such a scheme may be susceptible to problems arising due to the possible loss of signaling messages.
Another scheme uses the concept of ‘timestamps’. This scheme requires either distributed ‘virtual wall clocks’ or forms of virtual ‘Round Trip Timestamps (RTTs)’ across an unknown and ever-changing network. RTTs can drift, relative to each other, during a stream session, due to changing network dynamics, and hence may be inaccurate. If multiple related streams, such as audio, video, slides and mouse movements are used, then the complexity of using timestamps increases. Moreover, this scheme requires a connection to a dedicated timeserver, in order to maintain the virtual wall clocks.